<?php

namespace app\admin\controller;

use think\Controller;
use think\Request;

class Auth extends Controller
{
    //需验证方法集
    protected $is_check_login = [''];

    //初始化
    public function _initialize()
    {
        //判断方法不是登录页面
        if (Request::instance()->action() != "login") {
            //判断是否访问的登录页面
            if (Request::instance()->route('Indexpage') != 'login') {
                //判断是否登录，执行方法是否需要验证登录
                if (!$this->isLogin() && (in_array(Request::instance()->action(), $this->is_check_login) || $this->is_check_login[0] == "*")) {
                    return $this->error('请先登录!', "/" . config('adminPath') . "/login");
                }
            }
        }
    }

    //判断登录状态
    public function isLogin()
    {
        return session('?adminlycmsauth');
    }

    // 批量验证变量
    public function isDefine($data = [], $m = 'post')
    {
        foreach ($data as $key => $value) {
            if (!Request::instance()->has($value, $m)) {
                return false;
            }
        }
        return true;
    }

    // 分页查询
    public function getPageing()
    {
        $_page = (input('page') == null || input('page') == '0') ? '1' : input('page');
        // 返回数量
        $_limit = input('limit') == null ? '10' : input('limit');
        // 分页
        $limit = implode(',', [($_page * $_limit) - $_limit, $_limit]);
        return $limit;
    }
}
